iT邦幫忙

2023 iThome 鐵人賽

DAY 17
0
自我挑戰組

從零開始學Web Framework : React篇系列 第 17

DAY_17: 圖片翻轉動畫

  • 分享至 

  • xImage
  •  
  1. code
import React, { useState } from 'react';
import styles from './ImageFlip.module.css';//導入模塊化樣式

//處理圖像點擊事件和切換翻轉狀態
function ImageFlip() {
  const [isFlipped, setIsFlipped] = useState(false);

  const handleImageClick = () => {
    setIsFlipped(!isFlipped);
  };

  return (
    <div className={`${styles['image-container']} ${isFlipped ? styles.flipped : ''}`}>
      <div className={styles['image-front']} onClick={handleImageClick}>
        <img src="自定義圖片正面" alt="Front" height={150} width={150} />
        <p>正面</p>
      </div>
      <div className={styles['image-back']} onClick={handleImageClick}>
        <img src="自定義圖片反面" alt="Back" height={150} width={150} />
        <p>反面</p>
      </div>
    </div>
  );
}

export default ImageFlip;
.image-container {
    perspective: 1000px;
    width: 200px;
    height: 200px;
    position: relative;
    cursor: pointer;
  }
  
  .image-front,
  .image-back {
    width: 100%;
    height: 100%;
    position: absolute;
    transition: transform 0.5s;
    backface-visibility: hidden;
  }
  
  .image-back {
    transform: rotateY(180deg);
  }
  
  .flipped .image-front {
    transform: rotateY(180deg);
  }
  
  .flipped .image-back {
    transform: rotateY(0deg);
  }

2.實作


上一篇
Day_16: 圖片旋轉
下一篇
Day_18: 圖片模糊效果
系列文
從零開始學Web Framework : React篇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言